﻿using System;
using System.Collections.Generic;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WFFace.utils
{
    public class MyCommon
    {

        //打开新的窗体 - 使用线程的方法关闭和开启窗口
        // form 为窗体对象
        public static void WindowNavNewView(Form form)
        {
            Thread t1 = new(delegate () { 
                form.ShowDialog(); //弹出模态窗体，当前（旧）窗口关闭，新窗口还能继续存在使用
                form.Show();//弹出非模态窗体，但是当前（旧）窗体关闭了，新窗口也会关闭
            }); //创建新的线程
            t1.Start();//启动线程
        }

        //录屏
        public static string CaptureScreen() { 
            //创建一个和屏幕一样大小的Bitmap
            Rectangle bounds = Screen.PrimaryScreen.Bounds;
            //using 语句会主动释放内存
            using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height)) {
                using (Graphics g = Graphics.FromImage(bitmap)) {
                    g.CopyFromScreen(bounds.X, bounds.Y, 0, 0, bounds.Size);
                }
                //保存图片
                string filename = "path/to/screenshot/screenshot01.png";

                //文件目录是否存在
                if (!Directory.Exists("path/to/screenshot"))
                {
                    //文件目录不存在则创建
                    Directory.CreateDirectory("path/to/screenshot");
                }
                bitmap.Save(filename, ImageFormat.Png); //存储图片
               
                return filename;
            }
        }
    }
}
